import pandas as pd
import nltk

# # 用nltk对data中的Word列进行词性判断，内容存入data的POS列
# # 将每个单词放入一个列表中，然后进行词性标注
# data = pd.read_csv('output_tr.csv')
# data['POS'] = data['Word'].apply(lambda word: nltk.pos_tag([word])[0][1])
# data.to_csv('output_pos.csv', index=False,encoding='utf-8-sig')


# def pos(input_file, output_file):
#     data = pd.read_csv("{}".format(input_file)
#     data['POS'] = data['Word'].apply(lambda word: nltk.pos_tag([word])[0][1])
#     data.to_csv("{}".format(output_file), index=False,encoding='utf-8-sig')

import pandas as pd
import nltk

# 读取数据
data = pd.read_csv('output_tro.csv')

# 定义词性标记到中文描述的映射字典
pos_mapping = {
    'NN': '名词',
    'NNS': '名词复数',
    'NNP': '专有名词',
    'NNPS': '专有名词复数',
    'VB': '动词',
    'VBD': '动词过去式',
    'VBG': '动词现在分词',
    'VBN': '动词过去分词',
    'VBP': '动词非第三人称单数',
    'VBZ': '动词第三人称单数',
    'JJ': '形容词',
    'JJR': '比较级形容词',
    'JJS': '最高级形容词',
    'RB': '副词',
    'RBR': '比较级副词',
    'RBS': '最高级副词',
    'IN': '介词',
    'DT': '限定词',
    'PRP': '人称代词',
    'PRP$': '物主代词',
    # 可以根据需要添加更多标记
}

# 用nltk对data中的Word列进行词性判断，并转为中文描述，内容存入data的POS列
data['POS'] = data['Word'].apply(lambda word: pos_mapping.get(nltk.pos_tag([word])[0][1], '未知'))

# 保存结果
data.to_csv('output_poso.csv', index=False, encoding='utf-8-sig')
